Add shared WorkOS Vault test client#424
Closed
RhysSullivan wants to merge 1 commit intomainfrom
Closed
Conversation
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
executor-cloud | 08a9f35 | Apr 28 2026, 05:29 AM |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
executor-marketing | 08a9f35 | Commit Preview URL Branch Preview URL |
Apr 28 2026, 05:29 AM |
@executor/sdk
@executor/plugin-file-secrets
@executor/plugin-google-discovery
@executor/plugin-graphql
@executor/plugin-keychain
@executor/plugin-mcp
@executor/plugin-oauth2
@executor/plugin-onepassword
@executor/plugin-openapi
@executor/plugin-workos-vault
executor
commit: |
e0a2a01 to
4aedf88
Compare
4aedf88 to
08a9f35
Compare
Owner
Author
This stack of pull requests is managed by Graphite. Learn more about stacking. |
6 tasks
RhysSullivan
added a commit
that referenced
this pull request
May 4, 2026
Extract the in-memory `WorkOSVaultClient` previously inlined in `apps/cloud/.../api-harness.ts` into a published subpath `@executor-js/plugin-workos-vault/testing` so other apps and downstream consumers can stand up vault-backed tests without copying the fake. `makeTestWorkOSVaultClient` matches the current Effect-shaped client surface (post v4 migration) and adds optional knobs for exercising secret-store retry paths: `conflictOnNextSecretUpdate`, `rejectNamesWithColon`, and `rejectReadNamesLongerThan`. Errors are tagged (`TestWorkOSVaultNotFoundError`/`Conflict`/`InvalidRequest`) and carry numeric `status` so the production `isStatusError` checks in `secret-store.ts` route 404/409/400 through the same paths the real SDK exercises. Re-cut from #424 against current `main`; the `mcp.ts` and contract test pieces from that PR are intentionally dropped (the audience-fallback removal landed via #429 and the contract test is out of scope for this extraction).
RhysSullivan
added a commit
that referenced
this pull request
May 4, 2026
* Add shared WorkOS Vault test client Extract the in-memory `WorkOSVaultClient` previously inlined in `apps/cloud/.../api-harness.ts` into a published subpath `@executor-js/plugin-workos-vault/testing` so other apps and downstream consumers can stand up vault-backed tests without copying the fake. `makeTestWorkOSVaultClient` matches the current Effect-shaped client surface (post v4 migration) and adds optional knobs for exercising secret-store retry paths: `conflictOnNextSecretUpdate`, `rejectNamesWithColon`, and `rejectReadNamesLongerThan`. Errors are tagged (`TestWorkOSVaultNotFoundError`/`Conflict`/`InvalidRequest`) and carry numeric `status` so the production `isStatusError` checks in `secret-store.ts` route 404/409/400 through the same paths the real SDK exercises. Re-cut from #424 against current `main`; the `mcp.ts` and contract test pieces from that PR are intentionally dropped (the audience-fallback removal landed via #429 and the contract test is out of scope for this extraction). * fixup: rename WorkOSVaultSdk -> WorkOSVaultPromiseApi after #481
Owner
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
@executor/plugin-workos-vault/testingexport with an Effect-native in-memory Vault clientValidation
bun run lintfrom the top of the stackbun run --cwd packages/plugins/workos-vault typecheckbun run --cwd apps/cloud typecheckbunx vitest run src/sdk/secret-store.test.tsfrompackages/plugins/workos-vaultbunx vitest run src/mcp-session.e2e.node.test.ts --config vitest.node.config.tsfromapps/cloudbun run --cwd packages/plugins/workos-vault buildbunx vitest run src/sdk/workos-vault.contract.test.ts --reporter=verbosefrompackages/plugins/workos-vaultto verify the contract test skips without the explicit flagWORKOS_VAULT_CONTRACT_RUNS=10 op run --env-file=/home/rhys/executor/apps/cloud/.env.op -- bun run --cwd packages/plugins/workos-vault test:contract:workos-vault -- --reporter=verbose